The present invention is directed to a radio receiver in which the analog received signal is converted into digital form and digitally processed. It is especially applicable to devices in which several tuners share common digital circuitry, although the present invention can be applied in principle to single-tuner circuits.
There are presently available analog-to-digital converters that are fast enough to sample the instantaneous values of signals having frequency components in the range of several megahertz. Additionally, there are circuits available for operating on the resultant strings of digital values to generate discrete Fourier transforms and inverse discrete Fourier transforms in real time. By combining such available circuits with appropriate high-speed gating, buffering, and arithmetic circuits, it is feasible to construct systems in which the filtering, demodulation, and other functions carried out by conventional analog tuners can be performed digitally. Such digital systems are not yet economically competitive with low-cost analog radios of the type usually used for consumer reception of standard broadcast bands. However, their characteristics make them desirable for high-performance scanning receivers or other receivers that monitor numerous signals simultaneously.
Specifically, it is possible, after an initial analog filtering that restricts the input signal to a selected range of frequencies, to sample the input signal at a rate high enough to extract all the information carried within that range of frequencies. For instance, if the band of interest is between 35 and 40 MHz, i.e., 5 MHz wide, the sampling rate must be at least 10 MHz. The resultant string of digital values is broken into segments, which are processed to produce the discrete Fourier transform of each segment. Tuner filtering is performed by multiplying the values of the transform by corresponding values of a transfer function that permits retention of only the information that falls within the narrow band representing a given tuner. Because the same transformed input segment can be multiplied by several different transfer functions separately, each representing a separate tuner, digital processing lends itself to implementation of multiple tuners sharing common circuitry.
The values resulting from multiplication by the transfer function are processed by the transform circuitry to convert them back to the time domain. This time-domain sequence, after removal of certain invalid values, is equivalent to a sampled segment of the intended tuner's response to the input signal. It is concatenated with signals from previous segments to generate the complete sampled tuner output.
One problem with such an arrangement is that, for reasonably wide input bands, the computational requirements are truly prodigious. As was noted above, the sampling rate for a 5-MHz-wide input band is 10 MHz. Since the number of computations required for generation of a transform with fast-Fourier-transform (FFT) techniques increases as N log N, where N is the number of samples in a segment, it is desirable to keep the segments from being too long, even though longer segment lengths reduce the frequency with which the transformations must be performed.
However, it is a result of the tuner-filter transfer function that making the segments too small increases the computational requirements of the system, too. This fact can best be appreciated when it is realized that filters generally have "memories"; that is, the output from a filter depends not only on its current input but also on past inputs. In the case of a reasonably good finite-impulse-response (FIR) bandpass filter having a bandwidth of 3 kHz, for example, the output depends on the values of the input over at least the preceding 3 msecs. With such a filter, it is necessary, in order to generate an output segment from, say, t=.0. to t=6 msec, to operate on an input segment that includes samples not only from t=.0. to t=6 msec but also from t=-3 msec to t=.0.. The input segments thus must overlap each other by 3 msec.
This overlap adds to the computational burden without reducing the frequency at which the input transformations must be performed. That is, if the FFT module operates on the 9-msec interval from t=0 to t=6 msec, the transformations must be performed every 6 msec, not every 9 msec. Thus, as the length of the input segments is reduced toward 3 msec, the time required for each transformation is reduced somewhat, but the frequency with which the transformations must be performed increases dramatically. A reduction in segment length from 3.2 msec to 3.1 msec, for instance, makes little change in the time required for each transformation but doubles the frequency with which those transformations must be performed. For a good 3-kHz-wide filter, therefore, the overall duration of each input segment should be well above 3 msec. If the sampling rate is 10 MHz, the size of each segment must be considerably in excess of thirty thousand samples.
For the parameters mentioned in the foregoing illustration, there are FFT modules that can transform segments of such length in real time, but it would be beneficial to reduce the computation time required of such a module so that it could perform functions in addition to transformation of the input signal. For instance, a single FFT module could be used to calculate the inverse transform of several different filtered signals concurrently if enough time were available. Furthermore, the additional time might be used by the FFT module in performing a spectrum-scanning function in order to determine the frequencies to which the receiver should be tuned.
In addition to the time constraints, the large computational burden imposes a high hardware cost; the amount of memory required by the input-segment size mentioned above makes a system implementing even a single receiver large and expensive.
One way to decrease the computation time and thus free the FFT module for inverse transformation in several tuners is to reduce the input sampling rate, but this can only be done at the expense of narrowing the input band.
It is accordingly an object of the present invention to reduce the computation time required in such digital systems without reducing the input bandwidth or the impulse-response duration of the output filter.